package com.itheima.day05_内部类Lambda;

/*2、【编号：1105】
定义USB接口:（开启功能）（关闭功能）
定义笔记本类:（开机功能）（关机功能）（定义使用USB设备的功能,要
求:既能使用鼠标也能使用键盘,使用USB功能内部调用开启和关闭功能）
定义鼠标类:要符合USB接口
定义键盘类:要符合USB接口
定义测试类:创建电脑对象,依次调用开机方法,使用USB设备, 关机方法
运行结果：
笔记本开机
连接鼠标的USB
断开鼠标的USB
连接键盘的USB
断开键盘的USB
笔记本关机*/
interface Usb {
    void open();

    void stop();
}

class Computer {
    public void kaiji() {
        System.out.println("笔记本开机");
    }

    public void guanji() {
        System.out.println("笔记本关机");
    }

    public Computer() {
    }

    public void open(Usb usb) {
        usb.open();
    }

    public void stop(Usb usb) {
        usb.stop();
    }
}

class ShuBiao implements Usb {
    @Override
    public void open() {
        System.out.println("连接鼠标的USB");
    }

    @Override
    public void stop() {
        System.out.println("断开鼠标的USB");
    }
}

class JianPan implements Usb {
    @Override
    public void open() {
        System.out.println("连接键盘的USB");
    }

    @Override
    public void stop() {
        System.out.println("断开键盘的USB");
    }
}

public class Demo2 {
    public static void main(String[] args) {
        Computer com = new Computer();
        ShuBiao sb = new ShuBiao();
        JianPan jp = new JianPan();
        com.kaiji();
        com.open(sb);
        com.stop(sb);
        com.open(jp);
        com.stop(jp);
        com.guanji();
    }
}